﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Web;

namespace RTracker.Areas.Recruitment.Models.ContactPerson
{
    /// <summary>
    /// Class for ContactPerson, used to get and set values of ContactPerson properties.
    /// </summary>
    public class CContactPerson
    {
        int m_nContactPersonId;
        int m_nClientId;
        int m_nOrganizationId;
        String m_strContactPersonName;
        String m_strContactNumber;
        String m_strContactEmail;
        String m_strDesignation;
        String m_strContactPersonIds;
        String m_strSearch;
        String m_strSearchOn;
        int m_nPageNumber;
        int m_nRowSize;
        String m_strSortOn;
        String m_strSortType;
        Boolean m_bIsSoftLocked;
        int m_nSoftLockedBy;
        DateTime? m_dtSoftLockTimestamp;
        Boolean m_bIsHardLocked;
        int m_nHardLockedBy;
        DateTime? m_dtHardLockTimestamp;
        DateTime? m_dtCreateTimestamp;
        int m_nCreatedBy;
        DateTime? m_dtModifiedTimestamp;
        int m_nModifiedBy;
        Boolean m_bDeleteFlag;
        string m_strSoftlockedByName;
        string m_strHardlockedByName;
        string m_strCreatedByName;
        string m_strModifiedByName;

        /// <summary>
        /// Constructor of the class.
        /// </summary> 
        /// <date_created>7/1/2014</date_created>
        public CContactPerson()
        {
            m_nContactPersonId = 0;
            m_nClientId = 0;
            m_nOrganizationId = 0;
            m_strContactPersonName = "";
            m_strContactNumber = "";
            m_strContactEmail = "";
            m_strDesignation = "";
            m_strContactPersonIds = "";
            m_strSearch = "";
            m_strSearchOn = "";
            m_nPageNumber = 0;
            m_nRowSize = 0;
            m_strSortOn = "";
            m_strSortType = "";
            m_bIsSoftLocked = false;
            m_nSoftLockedBy = 0;
            m_dtSoftLockTimestamp = null;
            m_bIsHardLocked = false;
            m_nHardLockedBy = 0;
            m_dtHardLockTimestamp = null;
            m_dtCreateTimestamp = null;
            m_nCreatedBy = 0;
            m_dtModifiedTimestamp = null;
            m_nModifiedBy = 0;
            m_bDeleteFlag = false;
            m_strHardlockedByName = "";
            m_strSoftlockedByName = "";
            m_strCreatedByName = "";
            m_strModifiedByName = "";
        }

        /// <summary>
        /// Constructor of the class.
        /// </summary> 
        /// <date_created>7/1/2014</date_created>
        public CContactPerson(int nContactPersonId, int nClientId, int nOrganizationId, String strContactPersonName, String strContactNumber, String strContactEmail
            , String strDesignation, String strContactPersonIds, String strSearch, String strSearchOn, int nPageNumber, int nRowSize,
            String strSortOn, String strSortType, Boolean bIsSoftLocked, int nSoftLockedBy, DateTime dtSoftLockTimestamp, Boolean bIsHardLocked,
            int nHardLockedBy, DateTime dtHardLockTimeStamp, DateTime dtCreateTimeStamp, int nCreatedBy, DateTime dtModifiedTimeStamp,
            int nModifiedBy, Boolean bDeleteFlag, string strSoftlockedByName, string strHardlockedByName, string strCreatedByName, string strModifiedByName)
        {
            m_nContactPersonId = nContactPersonId;
            m_nClientId = nClientId;
            m_nOrganizationId = nOrganizationId;
            m_strContactPersonName = strContactPersonName;
            m_strContactNumber = strContactNumber;
            m_strContactEmail = strContactEmail;
            m_strDesignation = strDesignation;
            m_strContactPersonIds = strContactPersonIds;
            m_strSearch = strSearch;
            m_strSearchOn = strSearchOn;
            m_nPageNumber = nPageNumber;
            m_nRowSize = nRowSize;
            m_strSortOn = strSortOn;
            m_strSortType = strSortType;
            m_bIsSoftLocked = bIsSoftLocked;
            m_nSoftLockedBy = nSoftLockedBy;
            m_dtSoftLockTimestamp = dtSoftLockTimestamp;
            m_bIsHardLocked = bIsHardLocked;
            m_nHardLockedBy = nHardLockedBy;
            m_dtHardLockTimestamp = dtHardLockTimeStamp;
            m_dtCreateTimestamp = dtCreateTimeStamp;
            m_nCreatedBy = nCreatedBy;
            m_dtModifiedTimestamp = dtModifiedTimeStamp;
            m_nModifiedBy = nModifiedBy;
            m_bDeleteFlag = bDeleteFlag;
            m_strSoftlockedByName = strSoftlockedByName;
            m_strHardlockedByName = strHardlockedByName;
            m_strCreatedByName = strCreatedByName;
            m_strModifiedByName = strModifiedByName;
        }

        /// <summary>
        /// Used to store ContactPersonId
        /// </summary>
        public int ContactPersonId
        {
            get { return m_nContactPersonId; }
            set { m_nContactPersonId = value; }
        }
        /// <summary>
        /// Used to store ClientId
        /// </summary>
        public int ClientId
        {
            get { return m_nClientId; }
            set { m_nClientId = value; }
        }
        /// <summary>
        /// Used to store OrganizationId
        /// </summary>
        public int OrganizationId
        {
            get { return m_nOrganizationId; }
            set { m_nOrganizationId = value; }
        }
        /// <summary>
        /// Used to store ContactPersonName
        /// </summary>
        public String ContactPersonName
        {
            get { return m_strContactPersonName; }
            set { m_strContactPersonName = value; }
        }
        /// <summary>
        /// Used to store ContactNumber
        /// </summary>
        public String ContactNumber
        {
            get { return m_strContactNumber; }
            set { m_strContactNumber = value; }
        }
        /// <summary>
        /// Used to store ContactEmail
        /// </summary>
        public String ContactEmail
        {
            get { return m_strContactEmail; }
            set { m_strContactEmail = value; }
        }
        /// <summary>
        /// Used to store Designation
        /// </summary>
        public String Designation
        {
            get { return m_strDesignation; }
            set { m_strDesignation = value; }
        }
        /// <summary>
        /// Used to store ContactPersonIds
        /// </summary>
        public String ContactPersonIds
        {
            get { return m_strContactPersonIds; }
            set { m_strContactPersonIds = value; }
        }
        /// <summary>
        /// Used to store IsSoftLocked
        /// </summary>
        public Boolean IsSoftLocked
        {
            get { return m_bIsSoftLocked; }
            set { m_bIsSoftLocked = value; }
        }
        /// <summary>
        /// Used to store SoftLockedBy
        /// </summary>
        public int SoftLockedBy
        {
            get { return m_nSoftLockedBy; }
            set { m_nSoftLockedBy = value; }
        }
        /// <summary>
        /// Used to store SoftLockTimestamp
        /// </summary>
        public DateTime? SoftLockTimestamp
        {
            get { return m_dtSoftLockTimestamp; }
            set { m_dtSoftLockTimestamp = value; }
        }
        /// <summary>
        /// Used to store IsHardLocked
        /// </summary>
        public Boolean IsHardLocked
        {
            get { return m_bIsHardLocked; }
            set { m_bIsHardLocked = value; }
        }
        /// <summary>
        /// Used to store HardLockedBy
        /// </summary>
        public int HardLockedBy
        {
            get { return m_nHardLockedBy; }
            set { m_nHardLockedBy = value; }
        }
        /// <summary>
        /// Used to store HardLockTimestamp
        /// </summary>
        public DateTime? HardLockTimestamp
        {
            get { return m_dtHardLockTimestamp; }
            set { m_dtHardLockTimestamp = value; }
        }
        /// <summary>
        /// Used to store CreateTimestamp
        /// </summary>
        public DateTime? CreateTimestamp
        {
            get { return m_dtCreateTimestamp; }
            set { m_dtCreateTimestamp = value; }
        }
        /// <summary>
        /// Used to store CreatedBy
        /// </summary>
        public int CreatedBy
        {
            get { return m_nCreatedBy; }
            set { m_nCreatedBy = value; }
        }
        /// <summary>
        /// Used to store ModifiedTimestamp
        /// </summary>
        public DateTime? ModifiedTimestamp
        {
            get { return m_dtModifiedTimestamp; }
            set { m_dtModifiedTimestamp = value; }
        }
        /// <summary>
        /// Used to store ModifiedBy
        /// </summary>
        public int ModifiedBy
        {
            get { return m_nModifiedBy; }
            set { m_nModifiedBy = value; }
        }
        /// <summary>
        /// Used to store DeleteFlag
        /// </summary>
        public Boolean DeleteFlag
        {
            get { return m_bDeleteFlag; }
            set { m_bDeleteFlag = value; }
        }
        /// <summary>
        /// Field  to be  search
        /// </summary>
        public String Search
        {
            get { return m_strSearch; }
            set { m_strSearch = value; }
        }

        /// <summary>
        ///  Field on  search
        /// </summary>
        public String SearchOn
        {
            get { return m_strSearchOn; }
            set { m_strSearchOn = value; }
        }
        /// <summary>
        /// Used to store PageNumber
        /// </summary>
        public int PageNumber
        {
            get { return m_nPageNumber; }
            set { m_nPageNumber = value; }
        }
        /// <summary>
        /// Used to store RowSize
        /// </summary>
        public int RowSize
        {
            get { return m_nRowSize; }
            set { m_nRowSize = value; }
        }
        /// <summary>
        /// Used to store SortOn
        /// </summary>
        public String SortOn
        {
            get { return m_strSortOn; }
            set { m_strSortOn = value; }
        }
        /// <summary>
        /// Used to store SortType
        /// </summary>
        public String SortType
        {
            get { return m_strSortType; }
            set { m_strSortType = value; }
        }
        /// <summary>
        /// Used to store username who owns the softlock.
        /// </summary>
        public string SoftLockedByName
        {
            get { return m_strSoftlockedByName; }
            set { m_strSoftlockedByName = value; }
        }
        /// <summary>
        /// Used to store username who owns the hardlock.
        /// </summary>
        public string HardLockedByName
        {
            get { return m_strHardlockedByName; }
            set { m_strHardlockedByName = value; }
        }
        /// <summary>
        /// Used to store CreatedBy Name
        /// </summary>
        // Display name of this property
        [DisplayName("Created By")]
        public string CreatedByName
        {

            get { return m_strCreatedByName; }
            set { m_strCreatedByName = value; }
        }
        /// <summary>
        /// Used to store ModifiedBy Name
        /// </summary>
        // Display name of this property
        [DisplayName("Modified By")]
        public string ModifiedByName
        {

            get { return m_strModifiedByName; }
            set { m_strModifiedByName = value; }
        }
    }

}